home *** CD-ROM | disk | FTP | other *** search
/ Cream of the Crop 25 / Cream of the Crop 25.iso / program / tsetguid.zip / TEA / SET / SAMPLE / GRIDCOMP.JAV < prev    next >
Text File  |  1997-02-27  |  5KB  |  133 lines

  1. /*
  2.  * Copyright (c) 1996-1997, InetSoft Technology Corp, All Rights Reserved.
  3.  *
  4.  * The software and information contained herein are copyrighted and 
  5.  * proprietary to InetSoft Technology Corp. This software is furnished 
  6.  * pursuant to a written license agreement and may be used, copied, 
  7.  * transmitted, and stored only in accordance with the terms of such 
  8.  * license and with the inclusion of the above copyright notice. Please 
  9.  * refer to the file "COPYRIGHT" for further copyright and licensing 
  10.  * information. This software and information or any other copies 
  11.  * thereof may not be provided or otherwise made available to any 
  12.  * other person. 
  13.  */
  14. package tea.set.sample;
  15.  
  16. import tea.set.*;
  17. import java.awt.*;
  18. import java.applet.*;
  19. import java.net.*;
  20.  
  21. /**
  22.  * This is a demo applet to show using tea.set.Grid component with
  23.  * different kinds of components.
  24.  *
  25.  * @see Grid
  26.  * @see TextGrid
  27.  * @version 1.3, 01/31/97
  28.  * @author InetSoft Technology Corp
  29.  */
  30. public class GridComp extends Applet {
  31.    public void init() {
  32.       setLayout(new BorderLayout());
  33.       
  34.       grid = new Grid(8, 3);
  35.  
  36.       grid.setColHeader(Tool.tokenize("Column1;Column2;Column3", ";"));
  37.       grid.setRowSelectable(true);
  38.       grid.setColSelectable(true);
  39.       
  40.       // first row is a spanning ticker tape taking up all row
  41.       grid.setCell(0, 0, ticker = new TickerTape(message, 4), 1, 3);
  42.       ticker.setBackground(Color.black);
  43.       ticker.setForeground(Color.green);
  44.  
  45.       // second row contains: text, text field, and text area
  46.       grid.setCell(1, 0, new TextCanvas("Plain text\nMulti-line supported"));
  47.       grid.setCell(1, 1, new TextField("This is a TextField"));
  48.       grid.setAlignment(1, 1, Grid.V_TOP);
  49.       grid.setCell(1, 2, new TextArea("AWT TextArea\nWidget", 2, 18));
  50.  
  51.       // third row consists of: button, checkbox, and choice.
  52.       grid.setCell(2, 0, new Button("java.awt.Button"));
  53.       grid.setCell(2, 1, new Checkbox("java.awt.Checkbox"));
  54.       Choice choice = new Choice();
  55.       choice.add("Choice");
  56.       choice.add("Component");
  57.       grid.setCell(2, 2, choice);
  58.       
  59.       // setup images array
  60.       images = new Image[10];
  61.       for(int i = 0; i < images.length; i++) {
  62.      try {
  63.         URL url = new URL(getDocumentBase(), 
  64.                   "images/Duke/T"+(i+1)+".gif");
  65.         images[i] = getImage(url);
  66.      }
  67.      catch(Exception e) {
  68.         e.printStackTrace();
  69.      }
  70.       }
  71.  
  72.       // forth row consists of: image button, image, and animator
  73.       grid.setCell(3, 0, new ImageButton(images[0]));
  74.       grid.setCell(3, 1, new ImageCanvas(images[0]));
  75.       grid.setCell(3, 2, anim = new Animator(images));
  76.       grid.setAlignment(3, Grid.ALL_CELL, Grid.CENTER_CENTER);
  77.       
  78.       // fifth row consists of a spanning MultiList, and ...
  79.       MultiList mlist = new MultiList(2, 10);
  80.       mlist.setHeader(Tool.tokenize("Column1,Column2", ","));
  81.       mlist.addRow(Tool.tokenize("Row1;Description", ";"));
  82.       mlist.addRow(Tool.tokenize("Row2;Column2", ";"), images[0]);
  83.       mlist.addRow(Tool.tokenize("Row3;Column2", ";"), images[1]);
  84.       mlist.addRow(Tool.tokenize("Row4;Column2", ";"), images[2]);
  85.       mlist.addRow(Tool.tokenize("Row5;Column2", ";"), images[3]);
  86.       mlist.addRow(Tool.tokenize("Row6;Column2", ";"));
  87.       mlist.addRow(Tool.tokenize("Row7;Column2", ";"));
  88.       mlist.addRow(Tool.tokenize("Row8;Column2", ";"));
  89.       grid.setCell(4, 0, mlist, 4, 2); 
  90.       
  91.       // the third column acroll 5th to 7th row
  92.       grid.setCell(4, 2, new MaskText("Tel: ([999]) [999]-[9999]"));
  93.       grid.setCell(5, 2, new ImageLabel(images[0], "Image Label"));
  94.       TextCanvas text = new TextCanvas("A multi-line TextCanvas area\n"+
  95.                        "inside a Scroller.\n" +
  96.                        "Scroller handles the scrolling\n"+
  97.                        "of the text automatically");
  98.       grid.setCell(6, 2, new Scroller(text, false, 100, 30), 2, 1);
  99.       
  100.       // add a border to the grid using Effect3D
  101.       add("Center", new Effect3D(new Scroller(grid), Effect3D.RAISED_BORDER));
  102.    }
  103.    
  104.    /**
  105.     * Applet start method. Starts animation.
  106.     */
  107.    public void start() {
  108.       ticker.start();
  109.       anim.start();
  110.    }
  111.    
  112.    /**
  113.     * Applet stop method. Stops animation.
  114.     */
  115.    public void stop() {
  116.       ticker.stop();
  117.       anim.stop();
  118.    }
  119.    
  120.    // ticker tape message
  121.    private String message = 
  122.    "Any AWT component, or classes extended from AWT\n" +
  123.    "component can be put inside a Grid. This is a \n" +
  124.    "tea.set.TickerTape widget inside a spanning cell.\n" +
  125.    "This grid contains many Java AWT components, and\n" +
  126.    "components in the Tea Set Widget Collection.";
  127.    
  128.    private TickerTape ticker;
  129.    private Animator anim;
  130.    private Grid grid;
  131.    private Image images[];
  132. }
  133.